-- stack: in.0 -- format: 8 (HyperCard 1) -- flags: 0x1000 (none) -- protect password hash: 0 -- maximum user level: 5 (scripting) -- window: Rect(x1=0, y1=0, x2=0, y2=0) -- screen: Rect(x1=0, y1=0, x2=0, y2=0) -- card dimensions: w=0 h=0 -- scroll: x=0 y=0 -- background count: 15 -- first background id: 2728 -- card count: 110 -- first card id: 56725 -- list block id: 25402 -- print block id: 16687 -- font table block id: 0 -- style table block id: 0 -- free block count: 2 -- free size: 1248 bytes -- total size: 409600 bytes -- stack block size: 12800 bytes -- created by hypercard version: 0x01228000 -- compacted by hypercard version: 0x01258000 -- modified by hypercard version: 0x01258000 -- opened by hypercard version: 0x01258000 -- patterns[0]: 0x0000000000000000 -- patterns[1]: 0x8000000008000000 -- patterns[2]: 0x8800220088002200 -- patterns[3]: 0x8888222288882222 -- patterns[4]: 0x88AA22AA88AA22AA -- patterns[5]: 0xCCAA33AACCAA33AA -- patterns[6]: 0xEEAABBAAEEAABBAA -- patterns[7]: 0xEEBBBBEEEEBBBBEE -- patterns[8]: 0xFFBBFFEEFFBBFFEE -- patterns[9]: 0xFFBBFFFFFFBBFFFF -- patterns[10]: 0x8010022001084004 -- patterns[11]: 0xFFFFFFFFFFFFFFFF -- patterns[12]: 0x8822882288228822 -- patterns[13]: 0x1122448811224488 -- patterns[14]: 0xC4800C6843023026 -- patterns[15]: 0xB130031BD8C00C8D -- patterns[16]: 0xAA00AA00AA00AA00 -- patterns[17]: 0x8822552288225522 -- patterns[18]: 0x8855225588552255 -- patterns[19]: 0x77DD77DD77DD77DD -- patterns[20]: 0x8000000000000000 -- patterns[21]: 0xAA55AA55AA55AA55 -- patterns[22]: 0x038448300C020101 -- patterns[23]: 0x8244394482010101 -- patterns[24]: 0x8814224188412214 -- patterns[25]: 0x8080413E080814E3 -- patterns[26]: 0x22048C7422179810 -- patterns[27]: 0xBE808808EB088880 -- patterns[28]: 0x25C8328964244C92 -- patterns[29]: 0xA29C41BE2AC914EB -- patterns[30]: 0x40A00000040A0000 -- patterns[31]: 0x8040200002040800 -- patterns[32]: 0x7600BB00CE00B500 -- patterns[33]: 0xAA00000055000000 -- patterns[34]: 0x428852248228A451 -- patterns[35]: 0xFF808080FF080808 -- patterns[36]: 0xF87422478F172271 -- patterns[37]: 0xBF00BFBFB0B0B0B0 -- patterns[38]: 0xFF7FBE5DA2418000 -- patterns[39]: 0xFAF5FAF5A050A050 -- checksum: 0x0 ----- HyperTalk script ----- -- ================ Apple Training Support ================= -- -- Project Name: HyperCard 2.0 Product Training -- -- Apple employees: -- Design and Development: Jeff Brechlin -- Team Leader: Mary VanRiper -- -- Contractors: -- Design/Animations: Anne Wysocki -- Programmers: Gabriel Acosta, Kristi Wachter, Anne Wysocki -- Last modified: April 6, 1990 -- ======================================================== -- ======================================================== -- XCMD's: -- in this stack: -- ZoomRect -- SetVolume : © by Steven Kienle -- TitleBar : by Chris Knepper, © 1988 by Apple Computer, Inc. -- in stack •HC 2.0-2: -- Studio1 : © 1989 by Electronic Arts -- PaintPICT : © 1989 by Ruben Pinchanski -- SaveColorState -- SetColorState -- GetMaxColors -- ShowDialog -- XFCN's: -- in this stack: -- SysEnv() -- in stack •HC 2.0-2: -- Hpopupmenu() : Hierarchical PopupMenu 1.2, © 1988-1989 by -- Guy de Picciotto, its author, All Rights Reserved -- ======================================================== -- ======================================================== -- OPENSTACK HANDLERS -- -- Globals -- WalkDelay: the number of ticks between Elmo's steps -- disSpeed: the speed to use for visual dissolves -- StdDelay: a standard delay for hilites and card transitions -- MapMode: tells what map to go to -- UpEdge: the Y coord where the flying btn stops on menu anis -- on openStack global gFirstTime if gFirstTime is "no" then pass openStack lock screen checkVersion -- make sure they have HC 1.2.2 or later setupStuff -- hide menubar; set userlevel and volume setGlobals -- set up global variables (delays, etc.) put "no" into gFirstTime put line 1 of cd fld "Bookmark" of cd "Hi" into dest put line 2 of cd fld "Bookmark" of cd "Hi" into stackDest if dest is not empty then go cd dest of stack stackDest unlock screen with visual dissolve else --••••• I removed the openCard handler from the black card... ---- so now everything happens as a result of this: ---- (and that there is now a new blank card as card 1) unlock screen with dissolve visual iris open go cd "Black Intro Card" wait 20 visual iris open slow go cd "hi" wait 30 lock screen show cd fld "instructionFld" unlock screen with wipe right end if end openStack -- make sure the user has HyperCard 1.2.2 or later on checkVersion if the version < 1.2 then answer "You need HyperCard 1.2 or later." visual dissolve go home end if end checkVersion -- set up the environment on setupStuff hide menubar hide msg TitleBar hide put the userLevel into line 3 of cd fld "BookMark" of cd "Hi" set the userLevel to 5 setVolume 3 end setupStuff -- get the Microprocessor and set up the necessary globals on setGlobals global WalkDelay,DisSpeed,StdDelay,MapMode,UpEdge put word 2 of item 3 of sysenv() into SysMp if SysMp is "68000" then put 0 into WalkDelay put "dissolve fast" into DisSpeed put 2 into StdDelay else put 5 into WalkDelay put "dissolve" into DisSpeed put 10 into StdDelay end if put "graph" into MapMode put 23 into UpEdge end setGlobals -- ask whether to reset the stacks on resetStacks answer "Do you want to save your place?" with "No" or "Yes" lock screen if it is "No" then set cursor to watch resetMenus resetMap resetSA put empty into cd fld "Bookmark" of cd "Hi" else global cameFrom,stakName if cameFrom is empty then put the short name of this cd into CameFrom put the short name of this stack into stakName end if put cameFrom into line 1 of cd fld "BookMark" of cd "Hi" put stakName into line 2 of cd fld "BookMark" of cd "Hi" end if global gFirstTime,CameFrom,stakName put empty into gFirstTime put empty into CameFrom put empty into stakName TitleBar show if (line 3 of cd fld "BookMark" of cd "Hi") is not empty then set userLevel to line 3 of cd fld "BookMark" of cd "Hi" put empty into line 3 of cd fld "BookMark" of cd "Hi" show menuBar unlock screen with visual dissolve end resetStacks -- reset the flags and menus on resetMenus -- reset the flag flds for main menu animation resetFlags -- Basics Menu: reset the item boxes resetBxs "section 1:", "chkbx", 7 -- Nuts & Bolts Menu: reset both sets of item boxes resetBxs "section 2:1", "chkbxa", 11 resetBxs "section 2:2", "chkbxa", 9 -- Nuts & Bolts Menu: reset Intro section set the icon of btn "checkboxA" of cd "section 2:" to "box_" set the icon of btn "checkboxB" of cd "section 2:" to "box_" set the icon of btn "checkboxA" of cd "section 2:1" to "box_" set the icon of btn "checkboxB" of cd "section 2:1" to "box_" set the icon of btn "checkboxA" of cd "section 2:2" to "box_" set the icon of btn "checkboxB" of cd "section 2:2" to "box_" -- Support Menu: reset the item boxes resetBxs "section 3:", "chkbx", 6 end resetMenus -- go to stack "•HC 2.0-3" (map) and dehilite all the btns on resetMap set lockMessages to true push cd go stack "•HC 2.0-3" repeat with i = 1 to number of cds-1 go cd i dehilite end repeat pop cd set lockMessages to false end resetMap -- go to stack "•HC 2.0-4" (self-assessments) and reset all the cds on resetSA set lockMessages to true push cd go stack "•HC 2.0-4" repeat number(cds) send resetCd to this cd go next end repeat pop cd set lockMessages to false end resetSA -- reset the flag flds for main menu animation (only shown 1st time) on resetFlags put "first time" into cd fld "section 1:" of cd "go to main menu" put "first time" into cd fld "section 2:" of cd "go to main menu" put "first time" into cd fld "section 3:" of cd "go to main menu" end resetFlags -- reset checkbox buttons to show a number instead of a checkmark on resetBxs CdName, BtnName, NumBxs repeat with i=1 to NumBxs set the icon of btn (BtnName & i) of cd CdName to ("box" & i) end repeat end resetBxs -------------------------------------------------------- -- GENERAL HANDLERS -- standard 'go next' command on goNext lock screen go next unlock screen with dissolve -- exit to HyperCard end goNext -- standard 'go prev' command on goPrev lock screen go prev unlock screen with dissolve end goPrev -- Flash a button on hilite object, times, delay repeat times set the hilite of object to true wait delay ticks set the hilite of object to false end repeat end hilite -- Get text from cd fld "Text" and dump it into cd fld "TextDisplay" on DisplayText num put (offset("["& num & "]", cd field "text")+4) into firstChar put (offset("[" & (Num + 1) & "]", cd field "text")-2) into lastChar if lastChar > 0 then lock screen put char firstChar to lastChar of cd field "text" into cd field "TextDisplay" unlock screen with wipe right end if end DisplayText --=================== -- These handlers trap for arrow keys and menus -- so they can't be used to navigate. on arrowKey end arrowKey on enterKey end enterKey on returnKey end returnKey on doMenu menuChoice if menuChoice is in "Home,Quit HyperCard,Help,New Stack...,Open Stack..." then resetStacks --•• Added by Medior, Inc. 8/8/90 global RPStackName if RPStackName is not empty then set cursor to watch put RPStackName into shortname repeat until offset(":",shortname) = 0 delete char 1 to offset(":",shortname) of shortname end repeat delete last char of shortname answer "This will return to "&shortname&"." with "Cancel" or "OK" if it is "Cancel" then exit domenu set cursor to watch lock screen go RPStackName unlock screen with dissolve fast exit domenu end if --•• else if menuChoice is in "Back,Recent,First,Prev,Next,Last" or menuChoice is in "Find...,Message,New Card,Delete Card,Cut Card" then exit to HyperCard end if pass doMenu end doMenu